#ifndef FILE_INDEX_H
#define FILE_INDEX_H

#include <vector>
#include <string>
#include "file.h"
#include "constants.h"

class FileIndex {
	public:
		FileIndex(std::string config_file = DEFAULT_CONFIG);
		void add_file(const File *file);
		const std::vector<const File *> &get_files() const;
		const File *get_file_by_md5(std::string md5) const;
		~FileIndex();
	private:
		std::vector<const File *> files;
		// No permitimos operadores de copia o asignacion para esta clase.
		FileIndex(const FileIndex &ic);
		FileIndex &operator=(const FileIndex &ic);
};

#endif
